package com.boss.salary.service;

import com.boss.common.entity.PageDTO;
import com.boss.framework.dto.PaginationDTO;
import com.boss.salary.entity.DepartmentInfo;

import java.io.IOException;
import java.util.List;
import java.util.Map;

public interface IDepartmentInfoService {
    /**
     * 新增
     * @param departmentInfo
     */
    String insertDepartmentInfo(DepartmentInfo departmentInfo);

    /**
     * 根据id删除
     * @param id
     */
    void deleteDepartmentInfo(String id);

    /**
     * 修改
     * @param departmentInfo
     */
    String updateDepartmentInfo(DepartmentInfo departmentInfo);

    /**
     * 分页查询
     * @param paginationDTO
     * @return
     */
    PageDTO<DepartmentInfo> queryDepartmentInfoPage(PaginationDTO paginationDTO,Map<String, Object> queryParam,List<String> childrenId);

    /**
     * 根据map获取科室部门列表
     * @param parameters
     * @return
     */
    List<Map<String, String>> getBaseDataSelect(String parameters);

    /**
     * 获取全部数据
     * @return
     */
    List<DepartmentInfo> getAllDepartment(String agencyid,String mofDivCode);

    /**
     * 获取点击id
     * @param deptid
     * @param agencyid
     * @return
     */
    List<String> getChildrenId(String deptid,String agencyid,String mofDivCode) throws IOException, ClassNotFoundException;

    /**
     * 根据id取部门
     * @param id
     * @return
     */
    DepartmentInfo getDepartmentInfoById(String id);
}
